package cn.dogger.easyboot.init.initEntity;

import cn.dogger.easyboot.init.annotation.InitField;
import cn.dogger.easyboot.init.annotation.InitTable;
import cn.dogger.easyboot.init.enums.FieldTypeEnums;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * 角色信息表
 *
 * @author dogger
 *  2022-07-27
 */
@Data
@InitTable(name = "sys_role",remark = "角色信息表")
public class SysRole{

    @InitField(remark = "角色ID",name = "oper_id",type = FieldTypeEnums.int_,keyFlag = true)
    private Long roleId;

    @InitField(remark = "角色名称",name = "role_name",fieldLength = 50)
    private String roleName;

    @InitField(remark = "角色权限字符串",name = "role_key",fieldLength = 50)
    private String roleKey;

    @InitField(remark = "显示顺序",name = "role_sort",type = FieldTypeEnums.int_)
    private Integer roleSort;

    @InitField(remark = "数据范围（1：全部数据权限 2：自定数据权限 3：本部门数据权限 4：本部门及以下数据权限）",name = "data_scope",fieldLength = 50)
    private String dataScope;

    @InitField(remark = "角色状态（0正常 1停用）",name = "status",fieldLength = 50)
    private String status;

    @InitField(remark = "删除标志（0代表存在 2代表删除）",name = "del_flag",fieldLength = 50)
    private String delFlag;

    @InitField(remark = "创建者",name = "create_by",fieldLength = 50)
    private String createBy;

    @InitField(remark = "创建时间",name = "create_time",type = FieldTypeEnums.datetime_)
    private LocalDateTime createTime;

    @InitField(remark = "更新者",name = "title",fieldLength = 50)
    private String updateBy;

    @InitField(remark = "更新时间",name = "update_time",type = FieldTypeEnums.datetime_)
    private LocalDateTime updateTime;

    @InitField(remark = "备注",name = "remark",fieldLength = 250)
    private String remark;

}